const { parentPort } = require('worker_threads');
const fs = require('fs');
const path = require('path');

// 确保logs目录存在
const logsDir = path.join(__dirname, 'logs');
if (!fs.existsSync(logsDir)) {
  fs.mkdirSync(logsDir);
}

// 监听来自主线程的消息
parentPort.on('message', (data) => {
  try {
    // const { text } = data;
    // if (!text) {
    //   throw new Error('No text provided');
    // }

    // 生成日志文件名（使用当前日期）
    const date = new Date();
    const fileName = `${date.getFullYear()}${String(date.getMonth() + 1).padStart(2, '0')}${String(date.getDate()).padStart(2, '0')}.log`;
    const logFile = path.join(logsDir, fileName);
    console.log(logFile);
    // 添加时间戳
    // const timestamp = date.toLocaleTimeString('zh-CN', { 
    //   hour12: false, 
    //   hour: '2-digit', 
    //   minute: '2-digit', 
    //   second: '2-digit',
    //   fractionalSecondDigits: 3
    // });
    
    // // 将文本写入文件
    // const logEntry = `[${timestamp}] ${text}\n`;
    fs.appendFile(logFile, data+'\n', (err) => {
      if (err) {
        parentPort.postMessage({ success: false, error: err.message });
        return;
      }
      parentPort.postMessage({ success: true, message: 'Text logged successfully' });
    });
  } catch (error) {
    // 发送错误消息回主线程
    parentPort.postMessage({ success: false, error: error.message });
  }
});